package com.fastloan.mgt.invest.service;

import com.fastloan.mgt.invest.model.InvestSubject;
import com.fastloan.mgt.invest.model.vo.InvestSubjectCusVo;
import com.fastloan.mgt.invest.model.vo.InvestSubjectVo;
import com.kawins.base.BaseService;

import java.util.List;
import java.util.Map;

/**
 * @author rankai
 *         createTime 2017-08-2017/8/8 10:32
 */
public interface InvestSubjectService extends BaseService<InvestSubject> {

    /**
     * 项目分页列表
     *
     * @param map 参数Map
     * @return
     */
    List<InvestSubjectVo> investSubjectPageList(Map<String, Object> map);


    /**
     * 项目所有问卷列表
     *
     * @param map 参数Map
     * @return
     */
    List<InvestSubjectCusVo> forCustomerPageList(Map<String, Object> map);

    /**
     * 增加项目
     *
     * @param investSubject 项目bean
     * @param tempIds       模版集合
     * @param regionIds     区域Id集合
     * @return
     */
    void insertForTempIds(InvestSubject investSubject, String tempIds, String regionIds);

    /**
     * 根据客户经理Id获取项目数据
     *
     * @return
     */
    List<InvestSubject> selectSubjectByManagerId();

    /**
     * 更新项目
     *
     * @param investSubject 项目bean
     * @param regionIds     区域Id集合
     * @return
     */
    void update(InvestSubject investSubject, String regionIds);

    /**
     * 项目名称验重
     *
     * @param name     　模版名称
     * @param topOrgId 顶级机构ID
     * @return
     */
    List<InvestSubject> haveName(String name, String topOrgId);
}
